1. Field of the Invention
The present invention relates to database utilization in a data driven application and more particularly to data searching across both structured and unstructured data stores.
2. Description of the Related Art
Databases are designed to offer an organized mechanism for storing, managing and retrieving information. Databases exist in the most rudimentary form of a flat file in which each line of the file is a record and each number or string separated by a pre-determined delimiter is a field of the record. More advanced databases organize data through the use of structured tables able to be managed by way of a database management system (“DBMS”). Modern databases are organized through a number of different technological paradigms, including relational models (relational database), object models (object database), document models (document database), and the like. In most cases, the structure and organization of data in the database (namely the different tables, and records and fields defined therein) conform to a pre-defined schema intended to model a problem and/or solution evidenced by the database.
A distinction is to be drawn between the organization and structure of data in a database, and the organization and structure of data utilized within a data driven application incorporating the use of a database. In the latter case, the application can define a structured manner in which data is accessed and presented within a user interface of the application. For example, one structured manner might include a form based interface in which the completion of pre-specified fields with data can translate to a query of an underlying database. In another example, a structured manner might include the display of records pre-filtered according to a query associated with a specified user interface control.
Conversely, unstructured methods of accessing data of an application include the venerable search field in which keyword terms can be provided as input to a search query—generally applied according to rules of Boolean logic. In this case, the entirety of the database associated with the application can be searched utilizing available search query operations for the database and supported by the underlying DBMS. Notwithstanding, the success of a free form keyword search in producing a meaningful result set depends upon either the a priori knowledge of the structure of the data within the database and the relationship between different records stored therein, or a string match against any fields in the database regardless of their relational structure, type or semantic attributes. However, the success of a structured navigation of data in an application depends largely upon the pre-configuration of the user interface of the application and whether or not such user interface pre-configuration affords enough flexibility to permit the end user to discover and retrieve a meaningful result set.
Search, filter or navigation paradigms present today do not address the problem of heterogeneous underlying data set structure in a cohesive, simple to understand manner. Rather, present filter and navigation paradigms present static discovery methods constrained to one of the data structure types underlying the application and present no unified methodology to navigate multiple types of data sets within one user interface element.